Systems and methods for resolving discrepancies between recordings of game events

ABSTRACT

Systems and methods for resolving discrepancies between recordings made by multiple scorekeepers for a game comprising discrete events. In an example, a discrepancy resolving system include at least two personal computing devices and a remote server connected thereto, wherein each of the personal computing devices and the server is equipped with software which enables the personal computing devices to receive recordings of game events from a different scorekeeper, sending such recordings to the server, where the recordings from different scorekeepers are compared and discrepancies detected. The discrepancies are sent back to the computing devices for further responses from the scorekeepers. When the responses from different scorekeepers agree with each other, the discrepancies are resolved. When all scorekeepers resolve all discrepancies and agree that the game is over and all game events have been recorded, all versions of game event recordings are identical, and can be merged into one completed, official, scorekeeping record.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. nonprovisional patentapplication Ser. No. 16/697,106, filed Nov. 26, 2019, which claims thebenefit of U.S. provisional application No. 62/771,584, filed Nov. 27,2018, the disclosure of each which is incorporated herein by referencein its entirety.

TECHNICAL FIELD

The present disclosure relates to systems and methods for resolvingdiscrepancies between recordings of game events asentered by multiplescore keepers. More particularly, the present disclosure relates tosystems, software applications, tangible storage media, and methods thatallow two or more score keepers to coordinate their scorekeeping of gameevents for the purpose of obtaining multiple scorekeepers a single, moreaccurate and/or complete record of the game, such as a baseball game.

BACKGROUND

Scorekeeping is an essential part of most sport games. While many gameshave technical rules that make scoring quite straightforward and mostlyobjective, there are often game events that may require somewhatsubjective judgment, not to mention those games whose scoring is notpurely technical but rather is in a large part intrinsically based onthe judge's subjective judgment (e.g., gymnastics, figure skating,etc.). Even for those games for which scoring is mostly “objective”,scorekeepers may not always be able to accurately record all game eventsfaithfully due to the scorekeepers' lapse of attention, mis-enteredinformation electronically, limitation in vision, or simply theirparticular viewing angle for the game events. In limited circumstances,these failures may be noted and raised by a player, coach, or otherscorekeeper and corrected by using playback of recordings by videocamera, but such correction will disrupt the ongoing game and oftencomes with a high price tag. In many instances even video playback couldnot solve many types of errors.

In professional sports or games, there are one or more designatedreferees or umpires who make(s) official rulings, and a paidprofessional who is the official scorekeeper. However, in amateur gamessuch as high school or youth sports, there are typically amateurscorekeepers, one for each team, and many of these scorekeepers are notexperts in the sport for which they are keeping score. Take baseball, asan example, for amateur high school and youth sports games.

Though the score of the game is typically verified after the game andafter any inning with complexity, the much more detailed record of everyevent in the game is not verified. Each team is responsible for theirown players' statistics. This allows a player to have differentstatistics, depending on how each scorekeeper sees the play.

In almost all cases, scorekeeping is done on “paper”, which doesn'tdirectly allow for accurate coaching assessment, youth league regulationenforcement (e.g. pitch count, and ensuring player rotation), accuratehistorical account of play, accurate all-star, select, or “next level”assessment of player, a player's own personal enjoyment, a familymember's enjoyment, etc. Considerable manual labor is required tosummarize the detailed paper scorekeeping record into a more usableform. In the instance where a team does keep score digitally, thestatistics collected are unlikely to be accurate because there is noverification. Collecting statistics in amateur baseball are notoriouslyinaccurate for two main reasons. Firstly, team scorekeepers arevolunteers who have varying levels of understanding of scorekeeping andit is ultimately up to the team manager to determine what is acceptable.If they miss a play, it's often overlooked, and lost forever. Andsecondly, there is statistical bias. Scorekeepers tend to record theirown players more favorably, especially when pressured by coaches to doso. In baseball, that typically means fewer errors and more hits for thescorekeeper's own team.

Methods and systems that ensure agreement between opposing scorekeepersare desirable for games to be recorded more accurately.

SUMMARY

In one aspect, the present disclosure provides a system for resolvingdiscrepancies between recordings made by multiple scorekeepers for agame comprising discrete events. The system comprises a first personalcomputing device capable of communication with a remote server via adata network, where the first personal computing device has a firstsoftware application installed thereon, which when running, enables thefirst personal computing device to: receive a first recording of a gameevent from a predefined list of possible game events from a firstscorekeeper from a UI on the first personal computing device; send thefirst recording to the remote server via the data network; receive, fromthe remote server, a report regarding a discrepancy between the firstrecording and a second recording of the same game event, the secondrecording being in disagreement with the first recording; present thediscrepancy report on the UI of the first personal computing device;receive from the first scorekeeper a first response which comprises aselection from one of the first recording and the second recording, andsend the first response to the remote server; and receive from theremote server a feedback message as to whether the selection by thefirst scorekeeper resolves the discrepancy.

In some embodiments of the system, the second recording is received bythe remote server from a second personal computing device, the secondrecording is entered by a second scorekeeper. In some embodiments, thefirst recording comprises a description or characterization of the gameevent.

In some embodiments, the first software application enables the firstpersonal computing device to: present the discrepancy report only aftersending a plurality of first recordings to the server, the plurality offirst recordings each for one of a predefined set of game events thathave taken place (and as observed by the first scorekeeper). Forexample, for a baseball game, the predefined set of game events cancomprise game events occurring in a single plate appearance, a halfinning, or other game units or segments.

In some embodiments, the discrepancy report can include one or morerecordings of previous game events. In other words, the discrepancyreport can include entries that are not in disagreement, or can includemore than one discrepancy.

In some embodiments, the system further comprises a second personalcomputing device capable of communication with the remote server via thedata network, the second personal computing device having a secondsoftware application installed thereon, which when running, enables thesecond personal computing device to: receive the second recording on thegame event from a second scorekeeper from a UI on the second personalcomputing device; send the second recording to the remote server via thedata network; receive, from the remote server, the discrepancy report;present the discrepancy report on the UI of the second personalcomputing device; receive from the second scorekeeper a second responsewhich comprises a selection from one of the first recording and thesecond recording, and sending the second response to the remove server;and receive from the remote server a feedback message as to whether theselection by the first scorekeeper and the selection by the second corekeeper is in agreement.

In another aspect, the present disclosure provides a system forresolving discrepancies between score records made by multiplescorekeepers for a game. The system comprises a remote server operablyconnected to a first personal computing device and a second personalcomputing device via a data network, the remote server having a serversoftware application installed thereon, which when running, enable theremote server to perform the following:

receiving a first recording regarding a game event from a predefinedlist of possible game events from the first personal computing device;

receiving a second recording regarding the game event from the secondelectronic device; determining if there is a discrepancy between thereceived first recording and the second recording, and if there is adiscrepancy:

sending a report about the discrepancy to the first personal computingdevice; sending the report to the second personal computing device;receive a first response from the first personal computing deviceregarding a selection between the first recording and the secondrecording;

receive a second response from the second personal computing deviceregarding a selection between the first recording and the secondrecording; and

based on a comparison of the first response and the second response,determine whether the discrepancy has been resolved.

In some embodiments, the server software application enables the remoteserver to send the report about the discrepancy only after a plateappearance is completed. In some embodiments, the server softwareapplication enables the remote server to send the report about thediscrepancy immediately upon a positive determination or detection ofthe discrepancy.

In yet a further aspect, the present disclosure provides acomputer-implemented method for resolving discrepancies between gamerecords made by multiple scorekeepers for a game, the method beingoperable on a first personal computing device capable of communicationwith a remote server via a data network. In the method, the firstpersonal computing device receives a first recording of a game eventfrom a predefined list of possible game events from a first scorekeeperfrom a UI on the first personal computing device; the first personalcomputing device sends the first recording to the remote server via thedata network; the first personal computing device receives, from theremote server, a discrepancy report regarding a discrepancy between thefirst recording and a second recording of the same game event, thesecond recording being in disagreement with the first recording; thefirst personal computing device displays the discrepancy report on theUI of the first personal computing device; the first personal computingdevice receives from the first scorekeeper a first response whichcomprises a selection from one of the first recording and the secondrecording, and sends the first response to the remote server; and thefirst personal computing device receives from the remote server afeedback message as to whether the selection by the first scorekeeperresolves the discrepancy.

In yet a further aspect, the present disclosure provides acomputer-implemented method of resolving discrepancies between gamerecords made by multiple scorekeepers for a game, the method beingoperable on a system comprising a first personal computing device, asecond personal computing device, and a remote server operably connectedto a first personal computing device and a second personal computingdevice. In the method, the first personal computing device receives afirst recording on a game event from a predefined list of possible gameevents from a first scorekeeper; the first personal computing devicesends the first recording to the remote server via the data network; thesecond personal computing device receives a second recording on the gameevent from a second scorekeeper; the second personal computing devicesends the second recording to the remote server via the data network;the remote server determines whether there is any discrepancy from thefirst recording and the second recording, and if it is determined thereis a discrepancy: the remote server sends a message regarding thediscrepancy to each of the first personal computing device and thesecond personal computing device; the first personal device receives afirst response from the first scorekeeper regarding a selection betweenthe first recording and the second recording, and sends the firstresponse to the remote server; the second personal device receives asecond response from the second scorekeeper regarding a selectionbetween the first recording and the second recording, and sends thesecond response to the remote server; the remote server based on thereceived first response and second response determines if there is anagreement between the first response and the second response. In someembodiments of the method, the remote server sends the discrepancyreport only after receiving a plurality of recordings from each of thefirst and second personal computing devices, the plurality of recordingseach being one of a predefined set of game events that have taken place.The predefined set of game events can comprise game events occurring ina single plate appearance in a baseball game. In alternativeembodiments, the remote server can send the report about the discrepancyimmediately upon a positive determination of the discrepancy.

In above systems and methods, the game event can be an event that hasoccurred, or has not occurred (in the latter case the recording of whichwould be a proposed recording).

In yet a further aspect, the present disclosure provides acomputer-implemented method of resolving discrepancies between gamerecords made by multiple scorekeepers for a game, the method beingoperable on a system comprising a first personal computing device, asecond personal computing device, and a remote server operably connectedto a first personal computing device and a second personal computingdevice. The method includes: the first personal computing devicereceiving a first recording on a game event (either an event that hastaken place or one that has not but may happen later) from a predefinedlist of possible game events from a first scorekeeper, the firstrecording being tagged as requiring immediate resolution; the firstpersonal computing device sending the first recording to the remoteserver via the data network; the remote server detecting the status ofthe first recording as requiring immediate resolution; the remote serversending an alert message to a second personal computing device, themessage comprising a request for an acceptance of the first recording;the second personal computing device presenting the alert message to aUI of the second personal computing device; the second personalcomputing device receiving a response from a second scorekeeperregarding whether the second scorekeeper accepts the first recording;the second personal computing device sending the response to the remoteserver; and the remote server determines, based on the receivedresponse, whether the first recording is to be accepted as an officialrecording of the game event. In some embodiments of the method, if theremote server determines the first recording is to be accepted as theofficial recording of the game event, the method further comprising theremote server sending a message to each of the first and second personalcomputing device, wherein the message includes instructions to store thefirst recording as an official recording of the game event.

In a further aspect, the present disclosure also provides non-volatileand/or non-transient media storing the software applications describedherein.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a diagram showing an example system and associated operationsperformed by and among the system components during a game according tocertain embodiments of the disclosed subject matter.

FIG. 1B is a diagram showing certain operations of the system depictedin FIG. 1A after a game is completed (or a portion of a game iscompleted) according to some embodiments of the present disclosure.

FIGS. 2.1-2.27 are a series of screenshots of a GUI of a personalcomputing device implementing some embodiments of the disclosed subjectmatter in the context of a baseball game.

FIG. 3 is a diagram showing a process of resolving a discrepancy betweentwo scorekeepers, the discrepancy requiring to be resolved immediately.

FIG. 4 is a schematic representation of architecture of a personalcomputing device according to some embodiments of the presentdisclosure.

DETAILED DESCRIPTION

In general, the present invention provides a method and system forresolving a discrepancy between two electronic scorekeeping systems thatare being used to record events of same game on two client systems,e.g., personal computing devices (or a terminal, e.g., laptop computers,tablet computers, smart mobile phones, etc.). Two versions of therecordings of game events are stored electronically, one by and for eachscorekeeper in their respective personal computing devices, and arecompared with each other according to certain preset schedules orcriteria. Each time when there is a discrepancy detected between the twoversions of a game event entered by different scorekeepers, a method forresolving the discrepancy will be made available to one or bothscorekeepers, in some cases demanding an immediate resolution of thediscrepancy, and in other cases noting the discrepancy and allowingresolution at some time after zero or more game events are recorded.There may be any number of unresolved discrepancies while the game isincomplete and still being scored.

In some embodiments, to complete scorekeeping for a given game, alldiscrepancies for objective game events must be resolved, resulting intwo identical versions of the game. When the number of remainingdiscrepancies is zero, and both scorekeepers agree that the game is overand all events in the game have been recorded, the scorekeeping for thegame may be completed, with one and only one version of game eventsresulting from the two scorekeepers' separate collection of game events.

In some embodiments, discrepancy for subjective game events such as anerror in baseball can be noted as a discrepancy but can havescorekeepers “agree to disagree” and therefore have two versions at gameend. The official version of the game would be according to the rules ofthat sport (i.e. the home team is the official book in baseball), butthere could be a notation by each subjective play disagreement.

The discrepancy resolution systems, software and methods describedherein can result in a single, more accurate game record, which canserve as an essential building block in an automated administrationsystem. For example, league scores, standings, statistics, pitchereligibility based on pitch count and rest, etc. can all be immediatelyupdated at the conclusion of each game, so long as the recorded gameevents are identical for both the home and away scorekeeper. There is nochance for ambiguity or appeal when the records between the two teamsalways match.

As used herein, a personal computing device and a server can beconsidered to have components and architecture of a. general. purposecomputer, including a processor (CPU), a memory associated with the CPU,I/O interface, communication component, data (wired/wireless) connectioninterface, etc., which can communicate through a system bus. The memoryincludes a nonvolatile memory in which computer program product(s) (orsoftware) can be stored, which when activated or running (e.g., executedby the CPU), enables the computing device or the server to performcertain functions according to the instructions of the computer programproduct. ⁻When the client software is activated (the details of whiChwill be further described below), a user interface (Up, or graphical UI,may be loaded on the display area of the personal computing device so asto display information to a user and allow a user to interact with thesoftware, e.g., through areas of a touchscreen designated in thecomputer software.

FIG. 1A is diagram showing an example system and associated operationsperformed by and among the system components during a game according tocertain embodiments of the disclosed subject matter. As used herein, agame can be a sport game or non-sport game which essentially is astructured form of play that includes a collection of game events, eachof the game events may be evaluated and recorded to form a sequence ofrecordings of what happened in the game. From such recordings one maydetermine, among other things, if any player (or team of players) haswon the game, the score of the game, a player's performance orstatistics in certain aspects of the game, etc. A sport game can includebaseball, football, basketball, soccer, tennis, etc. A non-sport gameincludes chess, poker, a board game, a computer game, etc.

As shown in FIG. 1A, a first scorekeeper, away scorekeeper α (signifyinga scorekeeper for a guest or away team), enters one or more recordingsof game events E_(α) in a first personal computing device D_(α) througha UI of a first client software program (or App) installed on the firstpersonal computing device D_(α). The recordings of game events E_(α)(e.g., E1 _(α), E2 _(α), E3 _(α) . . . ) are sent from the firstpersonal computing device D_(α) to the remote server (or server) via adata network or combination of data networks (such as for example theInternet, a corporate intranet, a virtual private network (VPN), alocal-area network (LAN), a wireless local-area network (WLAN), acellular network, a wide-area network (WAN), a metropolitan-area network(MAN), or a combination of two or more such networks). It is understoodas described herein, when referring to sending or receiving anyrecordings, user input or responses, or other digital “object”representing a real-world counterpart, it is meant to refer to signalsencoding the underneath data representing the object being transmittedbetween the server and the personal computing devices. The client Appmay be a web browser or a native application executed on processor ofthe personal computing device(s).

A second scorekeeper, home scorekeeper β (signifying a scorekeeper for ahome or host team), enters one or more recordings of game events E_(β)in a second personal computing device Do through a UI of a second clientsoftware program (or App) installed on the second personal computingdevice D_(β). The second software program could be the same as the firstsoftware program or perform same or similar functionalities describedherein as relating to displaying scorekeeper's recordings of gameevents, receiving scorekeeper's inputs, sending and receiving messagesfrom and to the remote server. The recordings of game events E_(β)(e.g.,E1 _(β), E2 _(β), E3 _(β) . . . ) are also sent from the second personalcomputing device Do to the server via a data network.

The server includes a software application installed thereon which has adiscrepancy resolution logic which compares the recordings of the gameevents E_(α) and E_(β) sent by the two scorekeepers. The logic caninclude two basic modules: (1) discrepancy detection/generation module;and (2) discrepancy resolution module. The logic can be configured torun whenever two recordings of a same game event have been received fromD_(α) and D_(β), or the logic can run when the recordings received fromα and β cover a predefined set of possible game events that have takenplace or are taking place when the recording is being performed, e.g.,for a baseball, a plate appearance, or half an inning. As used herein, aplate appearance is a collection of one or more pitches and possiblyother events experienced by a batter that end when this batter is putout or becomes a runner. The events in a single plate appearance includebut are not limited to: Ball, Called Strike, Swinging Strike, Foul Ball,Ball in Play, Hit by Pitch, Attempted Pickoff, Pinch RunnerSubstitution, Picked Off, Stolen Base, Caught Stealing, etc.

Any recordings by α and β of any game event are first run through thediscrepancy detection module. if the discrepancy detection moduledetermines that any pairs of recordings about a same event entered bydifferent scorekeepers α and β, e.g., E1 _(α) and R1 _(β), E2 _(α), andE2 _(β), do not agree with each other, it can generate a discrepancyreport and send it out to each of D_(α) and D_(β). Such a report caninclude just one discrepancy for a single game event (i.e. a singlepitch in baseball), or a grouping of game events into a .logical gameunit, with each discrepancy within the group highlighted (i,e. a plateappearance in baseball listing all the events within the plateappearance, with any and all discrepancies identified). The discrepancyreport can be presented to a UI of each of the D_(α) and D_(β), eitherdirectly without. scorekeeper's prompt, or remain hidden until thescorekeeper activates it to make it visible. The discrepancy report canbe formatted to include a comparison of the recording(s) entered by aand the recording(s) entered by β, and the UI of each of D_(α) and D_(β)can be configured to accept input or response of scorekeeper α and βrespectively to select the recording(s) that he believes is correct orshould be taken as the official record of the game. This might includecreating a new version of the game events that has not been recorded byeither α or β. The responses from each of scorekeepers α and β, R_(α)and R_(β) are then sent back to the discrepancy resolution module of thediscrepancy resolution logic of the remote server. If R_(α) and R_(β)agrees with each other (,e.g., if each of scorekeeper αand β selects

E_(α) as the more “correct” version of the game event), the discrepancyresolution module can determine that the discrepancy has been resolved,in which case it will store the agreed-upon recording of the events tobe included as the official record of the game. If R_(α) and R_(β) donot agree with each other, the discrepancy resolution module can resendthe discrepancy report to either or both of D_(α) and D_(β) with analert message to be presented on the UI of D_(α) and D_(β) urging αor/and β to resolve the discrepancy. This process can repeat until α andβ both agree on a. particular version/recording of the game event, orwhen α and β agree to disagree in particular cases (they agree on how toresolve the discrepancy but maintain their different opinions on therecording of a game event, e.g., in cases where subjective judgment canplay a significant role), and in any event both agree to adopt a samerecording (e.g., a single description or version) of the game event fromwhich the discrepancy arises. In the “agree to disagree” scenario, theeventual “official” game records may be stored in a way with these“quietly disputed” entries annotated, e.g., as a reminder for lateranalysis.

If the discrepancy detection module determines a pair of recordingsabout a same event entered by different scorekeepers α and β agree witheach other, it can simply store either recording as an official recordof the game. (Alternatively, the server does not need to store theserecordings if they have been stored in D_(α) and D_(β), but in thisinstance the server can send a message to both D_(α) and D_(β) thatthere is no discrepancy.) Those recordings of game events from α and βthat agree with each other without having to go through the discrepancyresolution mechanism as described herein can also he saved/storedtogether with the “true” or “correct” recordings as a result of theresolution discrepancy mechanism to form a complete official record ofthe game, Eγ.

To enable both devices D_(α) and D_(β) to start to record the same gameand the server to recognize such, either scorekeeper α or β can initiatea request for a recording session for a game and notify the server. Theserver can create a unique identifier for the game and sendauthentication and other necessary information to both scorekeepers fortheir confirmation. Once the recording session is established (much likea multiparty conference call line is established), the two scorekeepers,their personal computing devices and the server may perform the processas illustrated in FIG. lA and FIG. 1B below. Other ways of initiatingthe recording session are also available, for example, by a manager ofthe server software sending out notices from the server to allparticipating scorekeepers' (and their devices) at the start of a game.Any other suitable ways of initiating the recording session are alsocontemplated.

FIG. 1B is a diagram showing certain operations of the system depictedin FIG. lA after a game is completed (or a portion of a game iscompleted, e.g., a plate appearance is completed) according to certainembodiments of the present disclosure. At that point, as describedearlier, the server has stored a collection of recordings that areconsidered to be official or “correct” recordings of the past gameevents for the entire game (or for the portion of the game before thesync process is performed). Such data of the collection of recordingscan be saved in a database residing on the server (or a databaseaccessible by the server) or in other places and in other manners. Theserecordings of game events are transmitted or otherwise synced to bothpersonal computing devices D_(α) and D_(β). At the completion of thissync process, each of D_(α) and D_(β) will now have the same completeunified/reconciled recordings about the entire game Eγ (or about theportion of game that has just been completed).

It is understood as used herein, a recording of a game event can be arecording of a game event that has occurred, or it can also be aproposed recording of an event that have not taken place yet.

FIGS. 1A and 1B illustrate how certain discrepancies may be resolvedbefore the game is over, but there is no need to resolve themimmediately after the discrepancy is detected. These discrepancies canbe termed “asynchronous discrepancies”. There are also types ofdiscrepancies that need to be resolved immediately before the game canproceed (otherwise the subsequent discrepancies between the scorekeeperscan become unmanageable). For example, as illustrated in FIG. 3, in abaseball game, when scorekeeper a changes the batting order, β isimmediately notified and must confirm or deny the change immediately. Ifthe proposed batting order change is denied, the game must be stoppeduntil the scorekeepers, umpires, and managers are able to sort out thecorrect batting order. In such a case, the event recording by a can betagged as requiring immediate resolution, and as soon as the serverreceives the recording from Da, it detects such a status, and sends analert message to D_(β) (the message including a request for anacceptance of the first recording) to be presented to a UI of D_(β).Scorekeeper β enters a response regarding whether he accepts the eventrecording proposed by α, and sends the response to the server. Theserver then determines, based on the received response from D_(β)whether the recording by a is to be accepted as the official recordingof the game event. If β does agree with α on α's proposed eventrecording, the recording is allowed and the state of the softwareprogram on both D_(α) and D_(β) may be altered to reflect the change. Ifβ does not agree with α, they may need to communicate in other means,e.g., by directly talking to each other, to resolve their disagreement.

The actions/operations performed by the server shown in FIGS. 1A and 1Bare generally referred to as the server functions, which can beimplemented on a server computer using software application and/orhardware or any combinations thereof. The actions/operations performedby the personal computing devices D_(α) or D_(β) shown in FIGS. 1A and1B are generally referred to as the client functions, which can beimplemented on the personal computing devices using software application(e.g., client mobile App) and/or hardware or any combinations thereof.

The system and process shown in FIGS. 1A and 1B are further illustratedin FIGS. 2.1-2.27, which are a series of 27 screenshots of a GUI on twomobile personal computing devices implementing some embodiments of thedisclosed subject matter in the context of a baseball game. Below is adescription of these screenshots and respective scorekeepers' actionsand associated methods implemented in the computing device to effectuatethose actions.

FIGS. 2.1-2.6 are screenshots of a home scorekeeper Bob (β), arranged ina chronological order as Bob records what happens in a baseball game.

FIG. 2.1 is a GUI of a software program on the touchscreen of a homescorekeeper Bob's mobile personal computing device (e.g., a smart mobilephone) D_(β), indicating two unresolved discrepancies (the number 2 onthe circumference of a circle enclosing an exclamation mark near theupper right corner of the screen, which on this interface can be used asa trigger to bring up a current list of discrepancies) that can beresolved at any time before the game is over. This illustratesasynchronous discrepancy resolution. The GUI provides a representationof a baseball field and player's positions as well as current gamestate, after the first two plate appearances of the game have occurred,and whose events have been fully recorded by both scorekeepers. It isnoted that the GUI may be updated to reflect changes in the game andplay-by-play game action as the game progresses. Certain screen areas ofthe GUI, such as the areas representing different players' positions,have been programmed to respond to a user's touch (simple contact byfingers or other more complicated gestures) to change the display, toshow separate menus, etc. Alternatives to the GUI can be implemented,for example, without showing the graphical representation of thebaseball field.

Behind the scene, Bob was distracted at game start by his youngestdaughter asking for a snack, causing him to miss the first pitch, whichcaused the first discrepancy. A couple of minutes earlier, he hadalready indicated that he agreed with the other scorekeeper's (Alice's)version, but Alice has not yet chosen a version for that first plateappearance. (Notice the number of pitches displayed is 6, which isdifferent than the number of pitches seen by the other scorekeeper inFIG. 2.7, which will be described hereinafter). Bob does not have timeto examine and resolve the other discrepancy yet because a ball isimmediately hit into play. Bob clicks on the “Pitch” button on the GUIto bring up the pitch menu (shown in FIG. 2.2).

FIG. 2.2: The “Pitch” menu (or pop-up window) activated by Bob clickingthe “Pitch” button (shown in FIG. 2.1) includes a few differentpredefined options. Bob selects the game pitch event, “Ball in play.”

FIG. 2.3: With “Ball in Play” menu up, Bob selects the type of ball inplay, “double.”

FIG. 2.4: With “Who Fielded the ball” screen, Bob selects left fielder“Gil G #7.”

FIG. 2.5: With selections complete, Bob is returned to the main fieldview. With discrepancies not yet resolved, the number of pitches is 7,the runner is on 2^(nd) base, and 2 discrepancies are shown. The otherscorekeeper, Alice, has not yet finished recording the 3^(rd) plateappearance when the ball was hit into play. Bob has time to peek at thelist of discrepancies, so he clicks on the red “2” to bring up thediscrepancy list.

FIG. 2.6: Bob examines the two discrepancies labeled with identifyinginformation. Note that the granularity of a comparison is a specificplate appearance that each scorekeeper has finished scoring. Even ifthere is a difference between one specific pitch of the plateappearance, in this embodiment of the invention, the difference detectedby the remote server by comparing the received recordings from bothscorekeepers is not reported back to either scorekeeper until the entireplate appearance is complete. Bob notes that the list of discrepanciescurrently lists the two batters who were from the first 2 plateappearances. It turns out there will be a 3^(rd) discrepancy for the3^(rd) batter as well, but Bob doesn't know this yet because Alice hasnot yet completed her recording of the “Ball in Play” for the 3^(rd)plate appearance. Bob notes the status of the two discrepancies—thefirst he has responded to, but Alice has not. For the second plateappearance, Alice has responded, but Bob has not. Discrepancies are notresolved until both scorekeepers respond and choose the same version.

FIGS. 2.7-2.18 are screenshots of GUI on a touchscreen display of apersonal computing device (like that of Bob's) of the away scorekeeperAlice (α). Again the sequence of the screenshots is according to timelapse.

FIG. 2.7 is a snapshot of what is shown on the display of Alice's mobilephone D_(α) which includes a representation of a baseball field andplayer's positions as well as current game state, before she startsrecording the 3^(rd)plate appearance. She also had 2 discrepancies.Notices how the number of pitches shows 7, which is different from the 6pitches shown on Bob's phone device in FIG. 2.1. This is because theyrecorded the first plate appearance differently. Alice has no time toexamine the list of discrepancies because a ball is immediately hit intoplay. Alice clicks on the “Pitch” button on the screen to bring up thepitch menu (shown in FIG. 2.8).

FIG. 2.8: The “Pitch” menu is shown, and Alice selects “Ball in play.”

FIG. 2.9: With “Ball in Play” menu up, Alice selects the type of ball inplay, “single.”

FIG. 2.10: With “Who Fielded the ball” screen, Alice selects leftfielder “Gil G #7.”

FIG. 2.11: With selections complete, Alice is returned to the main fieldview. A discrepancy was generated immediately after Alice completed herrecording of the third plate appearance, which changes the number ofdiscrepancies from 2 to 3 (see top right corner of the screenshot). Withno discrepancies yet resolved, the runner is on first, and the number ofpitches is 8, which differs from what Bob sees in FIG. 2.5.

At this time, the head coach visits the pitcher, giving Alice some timeto resolve some discrepancies. She clicks on the red 3 to bring up thediscrepancy list.

FIG. 2.12: Alice examines the 3 discrepancies labeled with identifyinginformation. Note that the granularity of a comparison in thisembodiment is a specific plate appearance that each scorekeeper hasfinished recording. Even if there is a difference between one specificpitch of the plate appearance, in this embodiment of the invention, thedifference detected by the remote server by comparing the receivedrecordings from both scorekeepers is not reported back to eitherscorekeeper until the entire plate appearance is complete.

Alice notes that the list of discrepancies currently lists the 3 batterswho were from the first 3 plate appearances. Alice notes the status ofthe 3 discrepancies—the first she has not responded to, but the otherscorekeeper Bob has. The second she has responded to, but Bob has notresponded to. Neither scorekeeper has yet responded to the thirddiscrepancy. Discrepancies are not resolved until both scorekeepersrespond and choose the same version.

Alice decides to examine and resolve the 3^(rd)discrepancy for the ballthat was just hit into play. So she selects the third discrepancy bytouching that area of the screen.

FIG. 2.13: Alice views the detailed comparison of her selected versionof the last play with Bob's version, as displayed in two columns. She iscertain that the hit was a single, as indicated by her Away version. Soshe selects the Away version by touching the Away button.

FIG. 2.14: Alice views the message acknowledging her submission, andselects “resume game” to finish with this screen.

FIG. 2.15: Alice returns to the list of discrepancies. The only one shehas not responded to is the first discrepancy, so she selects it whilethe head coach continues to talk with the pitcher.

FIG. 2.16: Alice views the details of the discrepancy. She is certainthat the first pitch of the game thrown was a ball, and figures theother scorekeeper hadn't yet started paying attention to the game. Soshe selects her version, the Away version of the first plate appearance.

FIG. 2.17: Alice sees a message indicating a successful resolution asboth scorekeepers agreed with this version of events. (The remote serverhas received a response from Bob, compared Bob's and Alice's response,and determined that they were in agreement, and sent this “Success”message to Alice's device). She clicks “resume game” to finish with thisscreen.

FIG. 2.18: Alice returns to the main field view. Note how the number ofdiscrepancies has been reduced from 3 down to 2.

FIGS. 2.19-2.26 are again screenshots of the Home scorekeeper Bob (β).

FIG. 2.19: Switching to see what is happening with Bob (home scorekeeperbeta) on his mobile personal computing device D_(β), Bob notices nothingdifferent about his main screen after taking a break to clean up a messhis young daughter made with her snack. However, he does notice that hisscreen shows the runner on 2^(nd) base, yet on the field, the runner isactually on 1^(st) base. This is different from what the otherscorekeeper sees in FIG. 2.18, as the single vs. double discrepancy hasnot yet been fully resolved.

During that 60 second break he took, the head coach was talking to thepitcher, while the other scorekeeper Alice finished scoring the3^(rd)plate appearance and resolved some discrepancies. Yet the numberof discrepancies remains 2. Bob clicks on the discrepancy inspectionarea on the upper right corner to bring up the discrepancies list as hethinks he can quickly resolve them before the next batter gets started.

FIG. 2.20: The menu or list of two discrepancies are shown. They aredifferent from what it was in FIG. 2.6. The discrepancy for the firstbatter in FIG. 2.6 is gone because it was resolved—the other scorekeeperAlice must have also selected her version (Bob had previously selectedit because he knew that he had missed the first pitch of the game whenhe got a snack for his young daughter). But there is an additionaldiscrepancy for the third batter. Glancing out to the field, Bob seesthat in his rush to go help his daughter clean up, he inadvertentlyselected double instead of single when scoring the last play. So Bobselects the discrepancy related to the last play (third batter).

FIG. 2.21: The detail of the discrepancy (on the single vs. double) isshown, and Bob resolves the discrepancy in favor of Home, the one withthe double.

FIG. 2.22: A disagreement message is shown, indicating that Bob picked aresponse to resolve the discrepancy that is different from the choiceprovided earlier by Alice. Bob realizes he pressed the wrong part of thescreen (in FIG. 2.21), selecting his own version which he knows waswrong. He now clicks “Record Response Again” so he can get past thisscreen and record his response again.

FIG. 2.23: The discrepancy detail is shown again (as in FIG. 2.21). Thistime Bob carefully selects the correct version of the game eventdescription, which is the other scorekeeper Alice's recording of a“single” for the play.

FIG. 2.24: A discrepancy list is shown again (Bob clicking on thediscrepancy inspection area) and sees that there is only 1 remainingitem—the 2^(nd) plate appearance. He selects this remaining item.

FIG. 2.25: A list of recordings by Bob and Alice for the 2^(nd) plateappearance are shown. Bob sees the discrepancy between the called andswinging strike, and selects his own home version, because he remembershow he asked the umpire if the batter checked his swing in time, and theumpire responded that the strike was “on the swing.” It turns out theother scorekeeper Alice agreed so this discrepancy is resolvedsuccessfully.

FIG. 2.26: Bob returns to main screen view. At this time alldiscrepancies have been resolved (no more number in the upper rightcorner), and this made changes to the game state, as compared with FIG.2.5 The runner is now on first base instead of second, and the number ofpitches has been increased from 7 to 8.

FIG. 2.27 is screenshot of Away scorekeeper Alice (α). Returning to themain field view on Alice's mobile computing device Da, no indication ofdiscrepancies is present, and the game state displayed on the screen isnow identical to what is displayed on Bob's screen shown in FIG. 2.26.

It is understood that there can be more than two scorekeepers for anygiven game, in which case the system and associated methods work in asimilar fashion such that discrepancy detection is performed onrecordings entered by each of the scorekeepers, and only when allrecordings on a game event agree with one another, no discrepancy isdeemed. Otherwise, the discrepancy resolution mechanism can proceed toallow each of the scorekeepers to respond to, “vote” on, or otherwiserewrite a correct or acceptable version of the event until suchdiscrepancy is resolved among all scorekeepers.

It is also noted that the 2 column (or multiple column) format ofshowing the discrepancies is just one way of implementing an aspect ofthe invention. The discrepancies can be shown in a variety of differentways. In addition, to receive responses from scorekeepers, thescorekeepers can be given extra options other than choosing his ownprevious entry versus another scorekeeper's entry. For example, inalternative embodiments, the scorekeepers can choose column 1, column 2,or “other”—which would enable the scorekeeper to reconstruct the playaccording to something else entirely. This would help when there aremultiple discrepancies within a plate appearance, and the 2 scorekeepersdiscuss and realize the play should have been scored differently thaneither of them.

In some of the examples illustrated herein, a remote server (or simply aserver) is included that is connected to and in communication with thescorekeepers' personal computing devices to perform certain functions,e.g., receiving recordings from the scorekeepers, carrying outdiscrepancy resolution logic operations to detect discrepancies, sendingout discrepancy reports to scorekeepers, receiving responses fromscorekeepers regarding their proposals to resolve discrepancies, etc.,in alternative embodiments such a remote server need not be physicallypresent, and the described server functions can be implemented on anyone of the personal computing devices as a software module or simulatorwhich directly communicates with the client mobile App installed on thesame device (the “hosting” device). Other personal computing deviceswith client mobile App installed can communicate with the hosting devicethrough either a data network or directly by Bluetooth or other localcommunication protocols. This would be useful for when an internetconnection is not available. In other embodiments, several scorekeepersmay share one personal computing device or terminal, each scorekeeperoperating on a separate instance of the scorekeeping App (each instanceacting independently as if on a separate computing device).

As shown in FIG. 4, in some embodiments, a personal computing device 10of the present disclosure includes a processor 110, memory 120, storage130, an input/output (I/O) interface 140, a communication component 150,and a bus 160. The server computer can have a same or substantiallysimilar architecture. Although this disclosure describes and illustratesa particular mobile device having a particular number of particularcomponents in a particular arrangement, this disclosure contemplates anysuitable mobile device having any suitable number of any suitablecomponents in any suitable arrangement. The processor can includehardware for executing instructions, such as those making up a computerprogram or application, for example, it may retrieve (or fetch) theinstructions from an internal register, an internal cache, memory,storage; decode and execute them; and then write one or more results tointernal register, internal cache, memory, or storage. In particularembodiments, software executed by processor 110 may include an operatingsystem (OS). As an example and not by limitation, if personal computingdevice 10 is a smartphone, then the OS may be a mobile operating system,such as for example, Android, iOS, Windows. In some embodiments, thememory 120 can include main memory for storing instructions for theprocessor to execute or data for processor to operate on. One or morebuses may connect the processor with the memory. The memory 120 caninclude random-access memory (RAM). This RAM may be volatile memory,where appropriate. Where appropriate, this RAM may be dynamic RAM (DRAM)or static RAM (SRAM). The storage 130 can include non-volatile and/ornon-transient mass storage or media for data or instructions, forexample HDD, flash memory, optical medium, DVD, etc., or a combinationof two or more thereof, solid-state memory. read-only memory (ROM), orany other suitable physical form. The I/O interface 140 can includehardware, software, or both providing one or more interfaces forcommunication between the personal computing device and one or more I/Odevices, such as keyboard, keypad, one or more sensors, touch screen,microphone, monitor, mouse, printer, scanner, speaker, etc. Thecommunication component 150 can include hardware, software, or bothproviding one or more interfaces for communication (such as, forexample, packet-based communication) between the personal computingdevice and the server (or other personal computing device(s)), forexample, a network interface controller (NIC) or network adapter forcommunicating with an Ethernet or other wire-based network or a wirelessNIC (WNIC), wireless adapter for communicating with a wireless network,such as for example a WI-FI network or modem for communicating with acellular network, such as third generation mobile telecommunications(3G), or Long Term Evolution (LTE) network, wireless PAN (WPAN) (suchas, for example, a BLUETOOTH WPAN), a WI-FI network, a WI-MAX network, acellular telephone network (such as, for example, a Global System forMobile Communications (GSM), 3G, or LTE network), or other suitablewireless network or a combination of two or more thereof. The bus 160can include hardware, software, or both coupling components of thepersonal computing device to each other, for example, a graphics bus, anEnhanced Industry Standard Architecture (EISA) bus, a front-side bus(FSB), a HYPERTRANSPORT (HT) interconnect, an Industry StandardArchitecture (ISA) bus, an INFINIBAND interconnect, a low-pin-count(LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, aserial advanced technology attachment (SATA) bus, a Video ElectronicsStandards Association local (VLB) bus, or another suitable bus or acombination of two or more of these.

Herein, “or” is inclusive and not exclusive, unless expressly indicatedotherwise or indicated otherwise by context. Therefore, herein, “A or B”means “A, B, or both,” unless expressly indicated otherwise or indicatedotherwise by context. Moreover, “and” is both joint and several, unlessexpressly indicated otherwise or indicated otherwise by context.Therefore, herein, “A and B” means “A and B, jointly or severally,”unless expressly indicated otherwise or indicated otherwise by context.

This disclosure encompasses all changes, substitutions, variations,alterations, and modifications to the example embodiments herein that aperson having ordinary skill in the art would comprehend. Moreover,although this disclosure describes and illustrates respectiveembodiments herein as including particular components, elements,functions, operations, or steps, any of these embodiments may includeany combination or permutation of any of the components, elements,functions, operations, or steps described or illustrated anywhere hereinthat a person having ordinary skill in the art would comprehend.Furthermore, reference in the appended claims to an apparatus or systemor a component of an apparatus or system being adapted to, arranged to,capable of, configured to, enabled to, operable to, or operative toperform a particular function encompasses that apparatus, system,component, whether or not it or that particular function is activated,turned on, or unlocked, as long as that apparatus, system, or componentis so adapted, arranged, capable, configured, enabled, operable, oroperative.

1. A system for resolving discrepancies between score records made bymultiple scorekeepers for a baseball game comprising: a remote serveroperably connected to a first personal computing device and a secondpersonal computing device via a data network, the remote server having aserver software application installed thereon, which when running,enable the remote server to perform the following: receiving a firstrecording regarding, a game event from a predefined list of possible.game events from the first personal computing device; receiving a secondrecording regarding the game event from the second electronic device;determining if there is a. discrepancy between the received firstrecording and the second recording, and if there is a discrepancy:sending a report about the discrepancy to the first personal computingdevice; sending the report to the second personal computing device;receive a first response from the first personal computing deviceregarding a. selection between the first recording and the secondrecording; receive a second response from the second personal computingdevice regarding a selection between the first recording and the secondrecording; and based on a comparison of the first response and thesecond response, determine whether the discrepancy has been resolved. 2.The system of claim 1, wherein the server software application enablesthe remote server to send the report about the discrepancy only after aplate appearance of the baseball game is completed.
 3. The system ofclaim 1 wherein the server software application enables the remoteserver to send the report about the discrepancy immediately upon apositive determination of the discrepancy.
 4. A computer-implementedmethod of resolving discrepancies between game records made by multiplescorekeepers for a game, the method being operable on a systemcomprising a first personal computing device, a second personalcomputing device, and a remote server operably^(,) connected to a firstpersonal computing device and a second personal computing device, themethod comprising: the first personal computing device receiving a firstrecording on a game event from a predefined list of possible game eventsfrom a first scorekeeper, the first recording being tagged as requiringimmediate resolution; the first personal computing device sending thefirst recording to the remote server via the data network; the remoteserver detecting the status of the first recording as requiringimmediate resolution; the remote server sending an alert message to asecond personal computing device, the message comprising a request foran acceptance of the first recording; the second personal computingdevice presenting the alert message to a UI of the second personalcomputing device; the second personal computing device receiving aresponse from a second scorekeeper regarding whether the secondscorekeeper accepts the first recording; the second personal computingdevice sending the response to the remote server; and the remote serverdetermines, based on the received response, whether the first recordingis to be accepted as an official recording of the game event. 5, Themethod of claim 4, wherein if the remote server determines the firstrecording is to be accepted as the official recording of the game event,the method further comprising: the remote server sending a message toeach of the first and second personal computing device, the messageincluding instructions to store the first recording as an officialrecording of the game event.
 6. The method of claim 4, wherein the gameevent is a proposed game event,